package cn.south.campus.business.service;

import cn.south.campus.business.model.entity.ComplaintCount;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 吐槽点赞点踩表 服务类
 * </p>
 *
 * @author chow
 * @since 2024-12-05
 */
public interface ComplaintCountService extends IService<ComplaintCount> {

    /**
     * 查询自己是否点赞点踩
     *
     * @param bizIds 吐槽id
     * @return 是否点赞点踩
     */
    Map<Long, boolean[]> selectMeOpt(List<Long> bizIds, Integer type);

    /**
     * 查询自己是否点赞点踩
     *
     * @param bizId 吐槽id
     * @return 是否点赞点踩
     */
    boolean[] selectMeOpt(Long bizId, Integer type);

    /**
     * 查询点赞点踩数量
     *
     * @param bizIds 吐槽ids
     * @return 点赞点踩数量
     */
    Map<Long, Map<Integer, Long>> selectCount(List<Long> bizIds, Integer type);

    /**
     * 查询点赞点踩数量
     *
     * @param bizId 吐槽id
     * @return 点赞点踩数量
     */
    Map<Integer, Long> selectCount(Long bizId, Integer type);

    /**
     * 点赞点踩记录
     *
     * @param id   吐槽id
     * @param code 点赞点踩
     */
    void cntSave(Long id, Integer code, Integer type);
}
